Green Hills Software Optimising Ada 95 compiler,
Aonix ObjectAda,
[2]Ada là
ngôn ngữ lập trình xuất xứ từ
Bộ quốc phòng Mỹ vào khoảng nửa đầu
thập niên 80 của
thế kỷ 20. Ngôn ngữ này được đặt tên theo
Ada Augusta nữ bá tước xứ Lovelace (1815 – 1852), nhà toán học với ý tưởng tiên phong coi phần cứng và phần mềm là hai mặt khác nhau đã đi vào lịch sử như lập trình viên đầu tiên của loài người.
[3]Nhu cầu của
Lầu Năm Góc lúc đó là một ngôn ngữ lập trình duy nhất thay thế cho khoảng 500 ngôn ngữ dùng cho các
hệ thống nhúng (embedded). Đặc trưng của các hệ thống như thế là phần cứng đa dạng,
phần cứng liền với
phần mềm, phần mềm hệ thống liền với phần mềm ứng dụng, thời gian sử dụng lâu dài, tính chất thời gian thực (real-time) và độ bền cao (high-integrity) thể hiện rõ, nhiều hệ thống nhúng là
hệ phân tán (distributed).Ngôn ngữ lập trình đáp ứng những yêu cầu đó phải chặt chẽ, nhỏ gọn nhưng có sức biểu diễn lớn, viết mã nguồn dễ đọc, sinh mã đích hiệu quả.Vì thế Ada xuất phát từ
Pascal, nhưng kiểm tra kiểu mạnh hơn. Mở rộng kiểu (type extension), kế thừa (inheritance) và đa kế thừa giao diện (multiple interface inheritance) hỗ trợ lập trình định hướng đối tượng. Ngoài các kết cấu điều khiển thông thường như rẽ nhánh, lặp, xử lý
ngoại lệ (exception), và kết cấu đơn vị thông thường như
thủ tục (procedure),
hàm (function), Ada còn có kết cấu
gói (package) hỗ trợ lập trình theo thành phần (modular), kết cấu mẫu (generic) hỗ trợ
lập trình mẫu, kết cấu tác vụ (task) và kiểu có bảo vệ (protected type) hỗ trợ
lập trình song song và
tương tranh.